<template>
  <div class="wrapper">
    <!-- header部分 -->
    <header>
      <p>在线支付</p>
    </header>
 
    <!-- 订单信息部分 -->
    <h3>订单信息：</h3>
    <div class="order-info">
      <h2>{{this.business.businessName}}</h2>
      <p>
        <i class="fa fa-caret-down" id="showBtn"></i>
      </p>
      <p>¥{{getTotal}}</p>
    </div>
 
    <!-- 订单明细部分 -->
    <ul class="order-detailet" id="detailetBox">
      <li  v-for="item in orderList" :key="item.orderId">
        <p>{{item.food.foodName}}  x {{item.quantity}}</p>
        <p>¥{{item.quantity*item.food.foodPrice}}</p>
      </li>
      <li>
        <p>配送费</p>
        <p>¥{{business.deliveryPrice}}</p>
      </li>
      <li>
        <p>配送地址</p>
        <p>{{this.defaultAddress.address}}</p>
      </li>
    </ul>
 
    <!-- 支付方式部分 -->
    <ul class="payment-type">
      <li>
        <img src="../assets/alipay.png" />
        <i class="fa fa-check-circle"></i>
      </li>
      <li>
        <img src="../assets/wechat.png" />
      </li>
    </ul>
    <div class="payment-button">
      <button @click="payup">确认支付</button>
    </div>
  </div>
</template>
 
<script>
export default {
  data() {
    return {
      orderId: this.$route.query.orderId, //订单编号
      business: "", //商家信息
      user: JSON.parse(sessionStorage.getItem("user")), //当前登录的用户信息
      orderList: [], //购物车详情数据
      defaultAddress: "" //默认收货地址
    };
  },
  computed: {
    //计算总价
    getTotal() {
      let total = 0;
      for (let i = 0; i < this.orderList.length; i++) {
        total += this.orderList[i].food.foodPrice * this.orderList[i].quantity;
      }
      //记得加上配送费
      return total + this.business.deliveryPrice;
    }
  },
  mounted() {
    //API-根据订单编号查询订单信息（商家名称）
    this.getOrderInfo();
    //根据订单编号查询订单信息
    this.getListOrder();
    //根据订单编号查询配送地址
    this.getDefaultAddress();
  },
  methods:{
    //API-根据订单编号查询订单信息（商家名称、商家配送费）
    async getOrderInfo(){
      await this.$http
        .get("/orders/getBusinessByOrderId", {
          params: {
            order_Id: this.orderId
          }
        })
        .then(res => {
          this.business = res.data.object;
          console.log(this.business)
        });
    },
    //API-根据订单编号查询订单信息（食品名称、价格、数量）
    async getListOrder(){
      await this.$http
        .get("/orderitem/getOrderitemByorderId", {
          params: {
            orderId: this.orderId,
            //total:this.getTotal
          }
        })
        .then(res => {
          this.orderList = res.data.object;
          //console.log(res.data.object);
        });
    },
 
    //获取默认收货地址
    getDefaultAddress() {
      this.defaultAddress = JSON.parse(
        sessionStorage.getItem("defaultAddress")
      );
      console.log(this.defaultAddress);
    },
    payup(){
      this.$http
        .get("/orders/changeStatus", {
          params: {
            order_Id: this.orderId,
            //total:this.getTotal
          }
        })
        .then(res=>{
            alert("支付成功")
            this.$router.push({path:"/orderList"});
        })
    },
  }
};
</script>
 
<style scoped>
/****************** 总容器 ******************/
.wrapper {
  width: 100%;
  height: 100%;
}
 
/****************** header部分 ******************/
.wrapper header {
  width: 100%;
  height: 12vw;
  background-color: #0097ff;
  color: #fff;
  font-size: 4.8vw;
 
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000;
 
  display: flex;
  justify-content: center;
  align-items: center;
}
 
/****************** 订单信息部分 ******************/
.wrapper h3 {
  margin-top: 12vw;
  box-sizing: border-box;
  padding: 4vw 4vw 0;
 
  font-size: 4vw;
  font-weight: 300;
  color: #999;
}
.wrapper .order-info {
  box-sizing: border-box;
  padding: 4vw;
  font-size: 4vw;
  color: #666;
 
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.wrapper .order-info p:last-child {
  color: orangered;
}
/****************** 订单明细部分 ******************/
.wrapper .order-detailet {
  width: 100%;
}
.wrapper .order-detailet li {
  width: 100%;
  box-sizing: border-box;
  padding: 1vw 4vw;
 
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.wrapper .order-detailet li p {
  font-size: 3vw;
  color: #666;
}
 
/****************** 支付方式部分 ******************/
.wrapper .payment-type {
  width: 100%;
}
.wrapper .payment-type li {
  width: 100%;
  box-sizing: border-box;
  padding: 4vw;
 
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.wrapper .payment-type li img {
  width: 33vw;
  height: 8.9vw;
}
.wrapper .payment-type li .fa-check-circle {
  font-size: 5vw;
  color: #38ca73;
}
.wrapper .payment-button {
  width: 100%;
  box-sizing: border-box;
  padding: 4vw;
}
.wrapper .payment-button button {
  width: 100%;
  height: 10vw;
  border: none;
  /*去掉外轮廓线*/
  outline: none;
  border-radius: 4px;
  background-color: #38ca73;
  color: #fff;
}
</style>